package com.zcsy.manage.model.wxpay;

import com.thoughtworks.xstream.annotations.XStreamAlias;

/**
 * @Title: WxPayNotifyData.java
 * @Package： com.zcsy.shop.model.wxpay 
 * @Description: 微信支付回调数据
 *
 * @author tanghan barbadosliy@163.com
 * @Copyright: 2015 武汉中财数元信息技术有限公司 All rights reserved.
 * @date 2015年11月14日
 * @version 1.0
 * @see JDK1.7.0_75
 * @since
 */
@XStreamAlias("xml")
public class WxPayNotifyData {
	
	/**
	 * 返回状态码<br>
	 */
	@XStreamAlias("return_code")
	private String return_code;
	
	/**
	 * 返回信息<br>
	 */
	@XStreamAlias("return_msg")
	private String return_msg;
	
	/**
	 * 微信分配的公众账号ID（企业号corpid即为此appId）<br>
	 * demo:wxd678efh567hg6787
	 */
	@XStreamAlias("appid")
	public String appid;
	
	/**
	 * 微信支付分配的商户号<br>
	 * demo:1230000109
	 */
	@XStreamAlias("mch_id")
	public String mch_id;
	
	/**
	 * 终端设备号(门店号或收银设备ID)，注意：PC网页或公众号内支付请传"WEB"<br>
	 * demo:013467007045764
	 */
	@XStreamAlias("device_info")
	public String device_info;
	
	/**
	 * 随机字符串，不长于32位<br>
	 * demo:5K8264ILTKCH16CQ2502SI8ZNMTM67VS
	 */
	@XStreamAlias("nonce_str")
	public String nonce_str;
	
	/**
	 * 签名<br>
	 */
	@XStreamAlias("sign")
	public String sign;
	
	/**
	 * 业务结果<br>
	 */
	@XStreamAlias("result_code")
	public String result_code;
	
	/**
	 * 错误代码<br>
	 */
	@XStreamAlias("err_code")
	public String err_code;
	
	/**
	 * 错误代码描述<br>
	 */
	@XStreamAlias("err_code_des")
	public String err_code_des;
	
	/**
	 * 是否关注公众账号<br>
	 * Y-关注，N-未关注
	 */
	@XStreamAlias("is_subscribe")
	public String is_subscribe;
	
	/**
	 * 交易类型<br>
	 * 调用接口提交的交易类型，取值如下：JSAPI，NATIVE，APP
	 */
	@XStreamAlias("trade_type")
	public String trade_type;
	
	/**
	 * 货币类型<br>
	 * 默认：CNY
	 */
	@XStreamAlias("fee_type")
	public String fee_type;
	
	/**
	 * 总金额<br>
	 */
	@XStreamAlias("total_fees")
	public int total_fee;

	@XStreamAlias("cash_fee")
	public int cash_fee;
	
	/**
	 * 现金支付货币类型<br>
	 */
	@XStreamAlias("cash_fee_type")
	public String cash_fee_type;
	
	/**
	 * 微信支付订单号<br>
	 */
	@XStreamAlias("transaction_id")
	public String transaction_id;
	
	/**
	 * 商户订单号<br>
	 */
	@XStreamAlias("out_trade_no")
	public String out_trade_no;

	/**
	 * 商家数据包<br>
	 */
	@XStreamAlias("attach")
	public String attach;
	
	@XStreamAlias("bank_type")
	public String bank_type;
	
	/**
	 * 支付完成时间<br>
	 */
	@XStreamAlias("time_end")
	public String time_end;

	/**
	 * 微信唯一标识<br>
	 */
	@XStreamAlias("openid")
	public String openid;
	
	/**
	 * @return Returns the return_code.
	 */
	public String getReturn_code() {
		return return_code;
	}

	/**
	 * @param return_code The return_code to set.
	 */
	public void setReturn_code(String return_code) {
		this.return_code = return_code;
	}

	/**
	 * @return Returns the return_msg.
	 */
	public String getReturn_msg() {
		return return_msg;
	}

	/**
	 * @param return_msg The return_msg to set.
	 */
	public void setReturn_msg(String return_msg) {
		this.return_msg = return_msg;
	}

	/**
	 * @return Returns the appid.
	 */
	public String getAppid() {
		return appid;
	}

	/**
	 * @param appid The appid to set.
	 */
	public void setAppid(String appid) {
		this.appid = appid;
	}

	/**
	 * @return Returns the mch_id.
	 */
	public String getMch_id() {
		return mch_id;
	}

	/**
	 * @param mch_id The mch_id to set.
	 */
	public void setMch_id(String mch_id) {
		this.mch_id = mch_id;
	}

	/**
	 * @return Returns the device_info.
	 */
	public String getDevice_info() {
		return device_info;
	}

	/**
	 * @param device_info The device_info to set.
	 */
	public void setDevice_info(String device_info) {
		this.device_info = device_info;
	}

	/**
	 * @return Returns the nonce_str.
	 */
	public String getNonce_str() {
		return nonce_str;
	}

	/**
	 * @param nonce_str The nonce_str to set.
	 */
	public void setNonce_str(String nonce_str) {
		this.nonce_str = nonce_str;
	}

	/**
	 * @return Returns the sign.
	 */
	public String getSign() {
		return sign;
	}

	/**
	 * @param sign The sign to set.
	 */
	public void setSign(String sign) {
		this.sign = sign;
	}

	/**
	 * @return Returns the err_code.
	 */
	public String getErr_code() {
		return err_code;
	}

	/**
	 * @param err_code The err_code to set.
	 */
	public void setErr_code(String err_code) {
		this.err_code = err_code;
	}

	/**
	 * @return Returns the err_code_des.
	 */
	public String getErr_code_des() {
		return err_code_des;
	}

	/**
	 * @param err_code_des The err_code_des to set.
	 */
	public void setErr_code_des(String err_code_des) {
		this.err_code_des = err_code_des;
	}

	/**
	 * @return Returns the is_subscribe.
	 */
	public String getIs_subscribe() {
		return is_subscribe;
	}

	/**
	 * @param is_subscribe The is_subscribe to set.
	 */
	public void setIs_subscribe(String is_subscribe) {
		this.is_subscribe = is_subscribe;
	}

	/**
	 * @return Returns the trade_type.
	 */
	public String getTrade_type() {
		return trade_type;
	}

	/**
	 * @param trade_type The trade_type to set.
	 */
	public void setTrade_type(String trade_type) {
		this.trade_type = trade_type;
	}

	/**
	 * @return Returns the fee_type.
	 */
	public String getFee_type() {
		return fee_type;
	}

	/**
	 * @param fee_type The fee_type to set.
	 */
	public void setFee_type(String fee_type) {
		this.fee_type = fee_type;
	}

	/**
	 * @return Returns the total_fee.
	 */
	public int getTotal_fee() {
		return total_fee;
	}

	/**
	 * @param total_fee The total_fee to set.
	 */
	public void setTotal_fee(int total_fee) {
		this.total_fee = total_fee;
	}

	/**
	 * @return Returns the cash_fee.
	 */
	public int getCash_fee() {
		return cash_fee;
	}

	/**
	 * @param cash_fee The cash_fee to set.
	 */
	public void setCash_fee(int cash_fee) {
		this.cash_fee = cash_fee;
	}

	/**
	 * @return Returns the cash_fee_type.
	 */
	public String getCash_fee_type() {
		return cash_fee_type;
	}

	/**
	 * @param cash_fee_type The cash_fee_type to set.
	 */
	public void setCash_fee_type(String cash_fee_type) {
		this.cash_fee_type = cash_fee_type;
	}

	/**
	 * @return Returns the transaction_id.
	 */
	public String getTransaction_id() {
		return transaction_id;
	}

	/**
	 * @param transaction_id The transaction_id to set.
	 */
	public void setTransaction_id(String transaction_id) {
		this.transaction_id = transaction_id;
	}

	/**
	 * @return Returns the out_trade_no.
	 */
	public String getOut_trade_no() {
		return out_trade_no;
	}

	/**
	 * @param out_trade_no The out_trade_no to set.
	 */
	public void setOut_trade_no(String out_trade_no) {
		this.out_trade_no = out_trade_no;
	}

	/**
	 * @return Returns the attach.
	 */
	public String getAttach() {
		return attach;
	}

	/**
	 * @param attach The attach to set.
	 */
	public void setAttach(String attach) {
		this.attach = attach;
	}

	/**
	 * @return Returns the time_end.
	 */
	public String getTime_end() {
		return time_end;
	}

	/**
	 * @param time_end The time_end to set.
	 */
	public void setTime_end(String time_end) {
		this.time_end = time_end;
	}

	/**
	 * @return Returns the bank_type.
	 */
	public String getBank_type() {
		return bank_type;
	}

	/**
	 * @param bank_type The bank_type to set.
	 */
	public void setBank_type(String bank_type) {
		this.bank_type = bank_type;
	}

	/**
	 * @return Returns the result_code.
	 */
	public String getResult_code() {
		return result_code;
	}

	/**
	 * @param result_code The result_code to set.
	 */
	public void setResult_code(String result_code) {
		this.result_code = result_code;
	}

	/**
	 * @return Returns the openid.
	 */
	public String getOpenid() {
		return openid;
	}

	/**
	 * @param openid The openid to set.
	 */
	public void setOpenid(String openid) {
		this.openid = openid;
	}

	/**
	 * {@inheritDoc}
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "WxPayNotifyData [return_code=" + return_code + ", return_msg=" + return_msg + ", appid=" + appid
				+ ", mch_id=" + mch_id + ", device_info=" + device_info + ", nonce_str=" + nonce_str + ", sign=" + sign
				+ ", result_code=" + result_code + ", err_code=" + err_code + ", err_code_des=" + err_code_des
				+ ", is_subscribe=" + is_subscribe + ", trade_type=" + trade_type + ", fee_type=" + fee_type
				+ ", total_fee=" + total_fee + ", cash_fee=" + cash_fee + ", cash_fee_type=" + cash_fee_type
				+ ", transaction_id=" + transaction_id + ", out_trade_no=" + out_trade_no + ", attach=" + attach
				+ ", bank_type=" + bank_type + ", time_end=" + time_end + ", openid=" + openid + "]";
	}

}
